Copyright (c) 2000 M.Smith